#pragma once

#include <string>
#include <vector>
using namespace std;

#include "Observer.h"

class Subject {
public:
	
	virtual void attach(Observer* observer);
	virtual void detach(Observer* observer);
	virtual void notify(const string& command);

protected:
	Subject();
	virtual ~Subject();

private:
	vector<Observer*> m_observers;
};


